package com.rockcent.mall.lib.repository;

import com.rockcent.common.common.PageResult;
import com.rockcent.mall.lib.domain.MallCashCoupon;
import com.rockcent.mall.lib.dto.IntegrationCouponRespDto;
import com.rockcent.mall.lib.dto.MallCashCouponDto;
import org.springframework.stereotype.Repository;

import java.math.BigDecimal;
import java.util.List;

/**
 * Created by zhangjh on 2016/12/19.
 */
@Repository
public interface MallCashCouponRepositoryCustom {

    /**
     * @param mallId
     * @param faceValue
     * @param startTime
     * @param endTime
     * @param channelId
     * @param status
     * @param pageResult
     * @return
     */
    PageResult<MallCashCouponDto> findIntegrationCashCouponPage(Long mallId, BigDecimal faceValue, String startTime, String endTime, Long channelId, String status, PageResult pageResult);

    /**
     * @param integrationChannelId
     * @return
     */
    Long queryTotalNum(Long integrationChannelId);

    /**
     * @param mallId
     * @param integrationChannelId
     * @return
     */
    Long queryMaxBatchPutNo(Long mallId, Long integrationChannelId);

    /**
     * @param integrationChannelId
     * @return
     */
    List<IntegrationCouponRespDto> queryAllCashCoupon(Long integrationChannelId);
}
